import Dep from "./dep.js"
class Watcher {
    // cb 是修改指定dom的闭包回调,只修改某一个
    constructor(cb) {
        // 当在视图层面调用 new Wathcer 时, 把当前的节点赋值给 target
        console.log('this ===> ', this);
        // Dep.target 是一个静态变量, this就是我们当前的Watcher,赋值给Dep后,Dep放入到订阅数组中
        Dep.target = this
        this._cb = cb
        // 执行以下回调修改参数
        this._cb()
        // 处理完毕后 要制空 否则会阻断后面的变量
        Dep.target = null
    }
    // 执行更新
    update() {
        this._cb()
    }
}

export default Watcher